The semiconductor integrated circuit (IC) industry has experienced rapid growth. Technological advances in IC materials and design have produced generations of ICs where each generation has smaller and more complex circuits than the previous generation. In the course of IC evolution, functional density (i.e., the number of interconnected devices per chip area) has generally increased while geometry size (i.e., the smallest component (or line) that can be created using a fabrication process) has decreased. This scaling down process generally provides benefits by increasing production efficiency and lowering associated costs. However, such scaling down has also increased the complexity of processing and manufacturing ICs and, for these advances to be realized, similar developments in IC processing and manufacturing are needed.
One particular IC device is known as a field-programmable gate array (FPGA). An FPGA is a gate device that can be configured and manufactured to perform in a given manner. Conventional FPGAs are traditionally manufactured having static random access memory (SRAM) for data storage. SRAM does not need to be refreshed to maintain the data while in operation; however, if the SRAM is powered down or otherwise loses power, SRAM is volatile memory and will lose data stored in the SRAM. The SRAM code is generally loaded from external flash memory devices. Thus, if one desires to change a programmed logic function of the FPGA, the logic function must be changed by modifying the SRAM code. As such, the data will be lost once the device is powered down. In addition, the SRAM is large and takes up valuable device space. Furthermore, the device cost is high due to the device requiring the main IC plus the flash memory device.
Accordingly, what is needed is an integrated circuit device that addresses the above stated issues, and a method for using the same.